package jianzhioffer;

// 剑指 Offer 21. 调整数组顺序使奇数位于偶数前面
public class Exchange {

    // 这个有点像快排的思想
    public int[] exchange(int[] nums) {
        int p = 0;
        int q = nums.length - 1;
        while (p < q) {
            // x&1 位运算 等价于 x%2 取余运算
            while (p < q && (nums[p]&1) != 0) {
                p++;
            }
            while (p < q && (nums[q]&1) == 0) {
                q--;
            }
            int t = nums[p];
            nums[p] = nums[q];
            nums[q] = t;
        }
        return nums;
    }
}
